{ "type" : "object", "properties" : { "id" : { "type" : "integer", "required" : true, "description" : "Unique identifier for each file that is produced or processed by CMP" }, "jobCode" : { "type" : "string", "required" : true, "description" : "Identifier of the job that produced or processed this file", "maxLength" : 10 }, "version" : { "type" : "integer", "required" : true, "maximum": 1.0, "minimum": 1.0, "description" : "The version of the file" }, "interfaceCategory" : { "type" : "string", "required" : true, "enum": ["PAYMENTS"], "description" : "CMP categorisation of the job associated with this file" }, "interfaceType" : { "type" : "string", "required" : true, "enum": ["AUTO_PAYMENTS"], "description" : "Sub-categorisation of the job" }, "stage" : { "type" : "string", "required" : true, "enum": ["LOAD", "BATCH"], "description" : "Represents the processing stage a file has reached" }, "stageStatus" : { "type" : "string", "required" : true, "enum": ["COMPLETE", "ERROR"], "description" : "Represents the status of the file at the processing stage" }, "batchDateTime" : { "type" : "string", "required" : true, "description" : "Represents when a batch was created in CMP", "format" : "DATE_TIME" }, "loadDateTime" : { "type" : "string", "required" : true, "description" : "Represents when an external file was initially loaded into CMP", "format" : "DATE_TIME" }, "externalFileName" : { "type" : "string", "required" : true, "description" : "Third party file name", "maxLength" : 100, "pattern": "^([a-zA-Z0-9._-])+$" } } }